<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        //一、 隐藏参数 ：每个函数在声明的时候 都会有一个预定的数组 把所有参数 存储起来。
        // var arr = [1,2,3];
        // console.log(arr);


        // function fn(){
        //     // 类数组，伪数组。使用可以当成数组来用
        //     // console.log(arguments); // 会把所有的参数放在数组里
        //     // 伪数组转 数组 1.var 数组 =  Array.from(“伪数组”)
        //     // 2.var 数组 = [...伪数组];
        //     // var arg = arguments[1];
        //     // console.log(arg);
        //     console.log(arguments);
        //     // var  arr = Array.from(arguments);
        //     var arr = [...arguments];
        //     console.log(arr);
        // }

        // fn(1,2,3);

        // arguments 一般用于处理 不定参 

        // function fn(){
        //     console.log(arguments)
        // }

        // fn(1,2,3,4,5,6)  // 参数的个数 不确定 ，有可能有多个 不好接收 参数


        // 二、字符串的循环；
        // var str = "abcdefg";
        // // var str = ["a","b","c","d"];
        // // 可以类似数组获取值 ，但是不能赋值值；
        // // console.log(str[3]);
        // // str[2] = "f";
        // // console.log(str);
        // // console.log( str.length);
        // for(var i=0;i<str.length;i++){
        //     console.log(str[i]);
        // }

            function fn(){
                console.log(arguments);
                var fn2 = arguments[0];
                console.log(fn2);
            }
            fn(function(){console.log(11)})

    </script>
</body>
</html>